package com.feiyisys.service;

import com.feiyisys.entity.Activity;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.feiyisys.dto.ActivityDTO;
import com.feiyisys.dto.ActivityResponseDTO;

/**
 * <p>
 * 文化遗产相关活动表 服务类
 * </p>
 *
 * @author wq
 * @since 2025-10-10
 */
public interface ActivityService extends IService<Activity> {

    /**
     * 获取活动列表（分页）
     * @param current 当前页码
     * @param size 每页大小
     * @return 分页结果
     */
    IPage<ActivityResponseDTO> getActivityPage(Long current, Long size);

    /**
     * 根据ID获取活动详情
     * @param id 活动ID
     * @return 活动详情
     */
    ActivityResponseDTO getActivityById(Long id);

    /**
     * 创建活动
     * @param activityDTO 活动信息
     * @return 创建的活动
     */
    Activity createActivity(ActivityDTO activityDTO);

    /**
     * 更新活动
     * @param activityDTO 活动信息
     * @return 更新后的活动
     */
    Activity updateActivity(ActivityDTO activityDTO);

    /**
     * 更新活动状态
     * @param id 活动ID
     * @param status 状态
     * @return 是否成功
     */
    boolean updateActivityStatus(Long id, Byte status);
}
